package com.dstz.bpm.core.manager;

import com.dstz.base.api.query.QueryFilter;
import com.dstz.base.manager.Manager;
import com.dstz.bpm.api.model.def.IBpmDefinition;
import com.dstz.bpm.core.model.BpmInstance;
import com.dstz.bpm.core.model.BpmTaskApprove;
import java.util.List;

public interface BpmInstanceManager extends Manager<String, BpmInstance> {
   boolean isSuspendByInstId(String var1);

   List<BpmInstance> getApplyList(String var1, QueryFilter var2);

   List<BpmTaskApprove> getApproveHistoryList(String var1, QueryFilter var2);

   BpmInstance getTopInstance(BpmInstance var1);

   BpmInstance genInstanceByDefinition(IBpmDefinition var1);

   List<BpmInstance> getByPId(String var1);

   BpmInstance getByActInstId(String var1);

   void delete(String var1);

   List<BpmInstance> getByParentId(String var1);

   void toForbidden(String var1, boolean var2);

   List<BpmInstance> listParentAndSubById(String var1);
}
